Trouble | 您所在的位置:网站首页 › 犀牛 布尔运算差集失败 › Trouble |
布尔运算疑难排解
布尔运算指令也可以用于曲面以及开放的多重曲面,运算结果取决于物件法线的方向。使用 Dir 指令可以查看方向。如果布尔运算的结果与您期望的相反,您可以使用 Dir 或 Flip 指令反转曲面方向,然后重试。 操作之前先尝试使用 Join 指令组合曲面。 网格物件的操作步骤与 NURBS 布尔运算的步骤是一样的。 无论输入物件是什么类型,指令执行结果总会输出一个网格。 为什么布尔运算会失败?布尔运算失败有以下原因: 法线方向与您预期的不同。 控制点集中于两个物件相交位置附近。 物件的曲面有重叠的部分。 曲面法线布尔运算使用曲面法线方向决定保留和丢弃的部分。当您执行布尔差集结果却得到了布尔联集的结果,或者执行布尔联集却得到了布尔差集的结果,都是因为物件的方向与您期望的是相反的,如果一个或多个物件没有完全闭合,也会发生这种情况,这是因为 Rhino 无法确定未闭合物件哪边才是物件的外面,您可以使用 Dir 指令查看物件的法线方向,然后通过反转选项更改物件的法线方向。完全闭合的物件在未反转法线之前,法线都是指向外面的。 控制点汇集控制点汇集是指多个控制点重叠在曲面边缘上的同一个位置。在 Rhino 中,圆锥体的顶点、球体的两极、三个边的未修剪曲面上都有控制点汇集,手动将控制点移动到同一个位置也可以形成控制点汇集。 当两个要做布尔运算的物件相交位置附近有控制点汇集时,会形成几何上的“奇点”,这种情况可能导致布尔运算失败。 曲面重叠曲面重叠指两个曲面的某些部分共用同一个区域。在这个例子中,两个立方体表面靠在一起,物件只能做联集运算,不能做差集与交集运算。 非流形的边缘除了重叠曲面之外,非流形边缘也会导致失败。 被三个或以上网格面或曲面共用的边缘称为非流形边缘。 图中是以 ShowEdges 指令高亮显示的多重曲面的非流形边缘。 如何操作如果无法执行布尔运算,可以通过其他方式获得想要的结果。 在这个例子中,锥体的顶点正好在立方体的角上,这是可能导致布尔运算失败的情况之一。 在这个案例中,作为布尔运算的替代方案,使用 Explode 指令将多重曲面炸开为数个单一曲面,使用 Intersect 指令在相交的两个曲面上求交线,使用交线修剪或分割曲面,去除不要的部分然后再将需要的部分组合在一起。 请参考Rhino Wiki: Boolean FAQ
Rhinoceros 8 © 2010-2024 Robert McNeel & Associates. 01-4月-2024 |
CopyRight 2018-2019 实验室设备网 版权所有 |